package com.dqyt.khjc.mapper;

import com.dqyt.khjc.bean.CustomerBean;
import com.dqyt.khjc.bean.CustomerUserBean;
import com.dqyt.khjc.bean.ResultMsg;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 *客户信息Mapper
 */
public interface CustomerMapper {

    /**
     * 查询所有未删除的客户信息
     * 在待审核申请页面的下拉框 调用
     * @return
     */
    public List<CustomerBean> getCustomerList();

    /**
     * 查詢一級單位
     * @return
     */
    public List<CustomerBean> getCustomerListPar();



    /**
     * 查詢一級單位
     * @return
     */
    public List<CustomerBean> getCustomerListChaAll();



    /**
     * 查询某个一级单位的下属单位
     * @return
     */
    public List<CustomerBean> getXzkhrylCustomerListCha(int pId);




    /**
     * 添加客户信息
     * @param customerBean
     *
     * @return
     */
    public int addCustomer(CustomerBean customerBean);


    public int addCustomerCh(CustomerBean customerBean);

    public int updatePxzd(int customerId,int pxzd);

    public int deleteById(int customerId);


    public int deleteByPId(int customerId);

    /**
     * 修改客户信息
     * @param customerBean
     *
     * @return
     */
    public int updateCustomer(CustomerBean customerBean);

    /**
     * 查询客户信息
     * @param customerId
     * @return
     */
    public CustomerBean getCustomerById(int customerId);


    /**
     * 查询客户信息
     * @param ids
     * @return
     */
    public List<CustomerBean> getCustomerByIds(@Param("ids") long[]  ids);



    /**
     * 分页查询 客户信息
     * @param page
     * @param size
     * @param enterpriseName  客户名称
     * @param contacts     联系人
     * @param loginStatue  限制登陆状态
     * @param province 省
     * @param city  市
     * @param block  区
     * @param address  详细地址
     * @return
     */
    public List<CustomerBean>  getCustomerListPage(Integer page,Integer size, String enterpriseName, String contacts,
                                                   String loginStatue, Integer province,Integer city,Integer block,String address);


    /**
     * 查询总条数
     * @param enterpriseName
     * @param contacts
     * @param loginStatue
     * @param province
     * @param city
     * @param block
     * @param address
     * @return
     */
    public  long getCustomerTotalNumber(String enterpriseName, String contacts,
                               String loginStatue, Integer province,Integer city,Integer block,String address);


    /**
     * 登陆限制
     * @param customerId
     * @param loginStatue   1:允许登陆    0禁止登陆
     * @return
     */
    public int loginRestrictions(int customerId, int loginStatue);


    /**
     * 修改默认人 和他的手机
     * @param customerId
     * @param contacts
     * @param phone
     * @return
     */
    public int updateByContacts(int customerId,String contacts,String phone);



    /**
     * 批量同意企业审核
     * @param cuids
     * @return
     */
    public  int  cubatchHandle(int [] cuids,int examineType);


    /**
     * 更具企业名称查询 是否有重名的
     * @return
     */
    public long getcustomerByName(int pId,String enterpriseName);
}
